import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap

# 经纬度和对应的值
lats = [118,119]  # 经度列表
lons = [29,30]  # 纬度列表
values = [0.02647,0.000162]  # 对应的值列表

# 归一化数据
normalized_values = (values - np.min(values)) / (np.max(values) - np.min(values))



# 创建地图
fig = plt.figure(figsize=(12, 8))
m = Basemap(projection='mill', llcrnrlat=-90, urcrnrlat=90, llcrnrlon=-180, urcrnrlon=180)

# 绘制海岸线和国家边界
m.drawcoastlines()
m.drawcountries()

# 将归一化后的值映射到RGB颜色
cmap = plt.cm.get_cmap('jet')
colors_rgb = cmap(normalized_values)[:, :3]  # 获取RGB颜色

# 绘制经纬度对应的值的颜色
x, y = m(lons, lats)  # 转换经纬度为地图上的坐标
# colors_rgb=colors_rgb*255
print(colors_rgb)

m.scatter(x, y, c=colors_rgb, s=30)
# 保存地图到本地
plt.savefig('world_map.png')
# 显示地图
plt.show()
